package com.xuecheng.test.demo.demo;

import java.util.ArrayList;
import java.util.List;

public class demo02 {
    public static void main(String[] args){

        demo02 demo02 = new demo02();
        String f = "1.2.监控动态监控动态列表与监控详情的监控结果：严重警告/警告：红色，预警/关注/：黄色，正常：绿色。截取字符串，在java语言中的用法" +
                "1、  public String substring(int beginIndex)" +
                "返回一个新字符串，它是此字符串的一个子字符串。该子字符串始于指定索引处的字符，一直到此字符串末尾。" +
                "参数：beginIndex - 开始处的索引（包括），" +
                "返回：指定的子字符串，异常：如果 beginIndex 为负或大于此 String 对象的长度，则抛出IndexOutOfBoundsException例  ：unhappy.substring(2)   returnshappymybaby.substring(3)   returnsaby2、public String substring(int beginIndex, int endIndex)\n" +
                "返回一个新字符串，它是此字符串的一个子字符串。该子字符串从指定的 beginIndex 处开始， endIndex:到指定的 endIndex-1处结束。参数：beginIndex - 开始处的索引（包括endindex 结尾处索引（不包括）。返回：指定的子字符串。抛出：如果 beginIndex 为负，或length大于字符串长度，则抛出IndexOutOfBoundsException \n" +
                "例：hamburger.substring(3,8)  returns burge" +
                "　　smiles.substring(0,5) returns smile";
        List<String> list = demo02.stringSpilt(f,100);
        for (String ff :list){
            System.out.println(ff);
        }




        List list1 = new ArrayList<String>();
        list1.add("sss");

        List list2 = new ArrayList<String>();
        list2.add("asd");

        list1.add("中间间隔数据");
        for (Object s : list2){
            list1.add(s);
        }

        System.out.println(list1);

 /*       int[] array = {3,5,10,2,7,9,12,15,1};

        ShellSort(array);
*/
    }



    public static int[] ShellSort(int[] array) {
        int len = array.length;
        int temp, gap = len / 2;
        while (gap > 0) {
            for (int i = gap; i < len; i++) {
                temp = array[i];
                int preIndex = i - gap;
                while (preIndex >= 0 && array[preIndex] > temp) {
                    array[preIndex + gap] = array[preIndex];
                    preIndex -= gap;
                }
                array[preIndex + gap] = temp;
            }
            gap /= 2;
        }
        return array;
    }


    /**
     * 将字符串按照一定长度分割
     * @param s
     * @param spiltNum  想要分割获得的子字符串的长度
     * @return
     */
    public List<String> stringSpilt(String s, int spiltNum) {
        int startIndex = 0;
        int endIndex = spiltNum;
        int lenght = s.length();
        List<String> subs = new ArrayList<>();//创建可分割数量的数组
        boolean isEnd = true;

        while (isEnd){

            if(endIndex >= lenght){
                endIndex = lenght;
                isEnd = false;
            }
            subs.add(s.substring(startIndex,endIndex)) ;
            startIndex = endIndex;
            endIndex = endIndex + spiltNum;
        }
        return subs;
    }

}
